from haystack import indexes

from apps.goods.models import SKU


class SKUIndex(indexes.SearchIndex, indexes.Indexable):
    # 每个都SearchIndex需要有一个（只有一个）字段
    # document = True。这向Haystack和搜索引擎表明哪个字段是要在其中进行搜索的主要字段。

    # 这只是一个惯例text。
    text = indexes.CharField(document=True, use_template=True)

    def get_model(self):
        # 返回对哪个模型进行检索
        return SKU

    def index_queryset(self, using=None):
        # 对哪些数据进行检索
        return self.get_model().objects.filter(is_launched=True)
        # return self.get_model().objects.all()
        # return SKU.objects.all()
